<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <script>
        // 案例1:
        // console.log(num); // ?  
        // var num = 2;
        // console.log(num); // ?  

        // 案例2:
        // var num = 2;
        // var num;
        // console.log(num); // 

        // 案例3:

        // GO = {
        //     f: function f() { }
        // }

        // 案例4:  

        // var f = function () {
        //     console.log(1);
        // }

        // function f() {
        //     console.log(2);
        // }
        // f(); // ?


        // 案例5:



        // f(); // ?

        // f = function () {
        //     console.log(1)
        // }

        // function f() {
        //     console.log(2)
        // }


        // 案例6:
        // f(); //?
        // var f = function() {
        //     console.log('k')
        // }

        // 案例7:

        // console.log(num); // ? 
        // num = 2;

        // 案例8:


        // function f() {
        //     var num = 3;
        // }
        // f();                      
        // console.log(num); // ?      



        // 案例9: 



        // function fnn() {
        //     var num
        //     function f() {
        //         num = 3;
        //     }
        //     f();
        // }
        // fnn()
        // console.log(num); // ?  


        // 案例10:
        // var num = undefined
        // function f() {
        //     var num = undefined
        //     num = 1;
        //     console.log(num); // ？ 1
        //     num = 3;
        // }


        // num = 2;

        // f();
        // console.log(num); // ？ 2


        // 案例11:
        // var b = 5;

        // function fn() {
        //     var a;

        //     function fn1() {
        //         console.log(a, b);
        //     }
        //     fn1();
        //     a = 312312312312;
        // }
        // fn();
        //案例12:
        // function fn(a, b) {
        //     function fn1(c) {
        //         var b = 8;
        //         console.log(a + b + c); // ? 24
        //     }
        //     fn1(a + b);
        // }

        // console.log(fn(3, 10)); // ?  undefined
        //         var a;
        //         function a(){

        //         }

        //         console.log(a)
        // 举个栗子 1
        // var a = 10;
        // function test() {
        //     a = 100;
        //     console.log(a); 
        //     var a;
        //     console.log(a);
        // }
        // test();
        // 举个栗子 2
        // var a = 100;
        // function test() {
        //     console.log(a);
        //     var a = 10;
        //     console.log(a);
        // }
        // test();
        // 举个栗子 3

        // var a = 100;
        // function test() {
        //     console.log(a);
        //     a = 10;
        //     console.log(a);
        // }
        // test();
        // console.log(a);

        // a = 1
        // console.log(a)
        // a = 2
        // console.log(a)
        // a = 3
        function fn() {
            function fn() {
            }
            fn()
        }

        fn()
    </script>
</body>

</html>